package com.yidingdui.service;

import com.yidingdui.domain.vo.ModelHistoryVO;

import java.util.List;

public interface CacheService {
    
    /**
     * 缓存用户历史记录
     */
    void cacheUserHistory(Long userId, List<ModelHistoryVO> histories);
    
    /**
     * 从缓存获取用户历史记录
     */
    List<ModelHistoryVO> getUserHistoryFromCache(Long userId);
    
    /**
     * 清除用户历史记录缓存
     */
    void clearUserHistoryCache(Long userId);
    
    /**
     * 缓存任务状态
     */
    void cacheTaskStatus(String taskId, ModelHistoryVO task);
    
    /**
     * 从缓存获取任务状态
     */
    ModelHistoryVO getTaskStatusFromCache(String taskId);
    
    /**
     * 清除任务状态缓存
     */
    void clearTaskStatusCache(String taskId);
    
    /**
     * 发布任务完成通知
     */
    void publishTaskCompletion(String taskId, String status, String message);
}
